<?php
require_once 'Listagem.php';
require_once 'Objeto.php';
class ListagemPorRegistro implements Listagem {

    public function listar(array &$dados, &$pagina, &$numRegistrosPorPagina) {
        $consulta_from = "";
        $consulta_where = "where ";
        $dadosFiltros = array();
        if (isset($dados['codregistro'])) {
            $dadosFiltros[] = $dados['codregistro'];
            $consulta_where = $consulta_where.'o.cod_registro = ? AND ';
        }
        if (isset($dados['lz_codigo'])) {
            $dadosFiltros[] = $dados['lz_codigo'];
            $consulta_from = $consulta_from . ", detalhe_localizacao det_loc ";
            $consulta_where = $consulta_where.'det_loc.cod_interno = o.cod_interno and '.
                'det_loc.lz_codigo = ? and ';
        }
        if ($consulta_where == "where ") {
            return 'Selecione ao menos uma opção para consulta';
        }
        $query = $consulta_from.$consulta_where;
        $query = substr_replace($query, "" , strlen($query) - 4)." limit ".$numRegistrosPorPagina." offset ".($numRegistrosPorPagina*$pagina);
        return Objeto::listar($query, $dadosFiltros);
    }
}
?>
